package cn.dnui_zjs008.dnuifood_.model;

import cn.dnui_zjs008.dnuifood_.listener.OnRetrofitListener;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;

public class BaseModel {
    protected Retrofit retrofit;
    private String BaseUrl="http://172.24.10.175:8080/foodService/";
    public BaseModel()
    {
        retrofit = new Retrofit.Builder()
                .baseUrl(BaseUrl)
                .addConverterFactory(GsonConverterFactory.create())
                .build();
    }
    protected   <T> void bindCallBack(Call<T> call,
                                  final OnRetrofitListener listener,
                                  final int flag){
        call.enqueue(new Callback<T>() {
            @Override
            public void onResponse(Call<T> call, Response<T> response) {
                if(response.body()==null){
                    listener.onFailure("解析错误");
                }
                else{
                    listener.onSuccess(response.body(),flag);
                }
            }

            @Override
            public void onFailure(Call<T> call, Throwable t) {
                listener.onFailure(t.toString());
            }
        });

    }


}
